home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mesolore
/
Mesolore - Disc 2.iso
/
mac
/
data
/
Selden.dir
/
00001_Script_MovieScript 1
next >
Wrap
Text File
|
2001-03-05
|
12KB
|
503 lines
global MNDestList2
global gretracelist,preRo, preRx, preCdx, cdxDestList, cdxScroll, cdxNew, MNDestList, cdxLookupList, cdxLookupIdx
Global gShowBalloons, gShowText, gShowOrder, gIndex,glastPic,gshowSearch,gShowLeftPanel
--- prepare, start, stop movie
on tt
repeat with x = 2 to the number of members of castlib 3
delete line 1 to 2 of field member x of castlib 3
end repeat
end
on prepareMovie
hidesprite [100]
hidesprite [101]
-- sprite(100).visible = 0
-- sprite(101).visible = 0
sprite(120).visible = 0
if voidp(gshowballoons) then gShowBalloons = FALSE
gShowText = FALSE
gShowSearch = FALSE
if voidp(gShowOrder) then gShowOrder = FALSE
if gShowOrder = FALSE then
repeat with x = 5 to 8
set the visible of sprite x = FALSE
end repeat
end if
if gRetraceList = void then set gRetraceList = ["Home*Intro"]
set the visible of sprite 54 = false
showPanel
if not gShowLeftPanel then
showLeftPanel
end if
set the visible of sprite 61 = false
set the visible of sprite 60 = false
set gIndex = field "Index"
end
on StartMovie
-- puppetsprite 60, TRUE
-- puppetsprite 61, TRUE
updatestage
cursor 4
set preRo = "C0"
set preRx = "C0"
set preCdx = "C0"
set cdxLookupIdx = "1"
set cdxLookupList = value (field ("LookupListTxt" && cdxLookupIdx))
set cdxNew = TRUE
set MNDestList = value(field "MNScriptTxt")
set MNDestList2 = value(field "MNScriptTxt2")
set cdxScroll = FALSE
set cdxDestList = ["1": "S1", "2": "S2", "3": "S3", "4": "S4", "5": "S5", "6": "S6", "7": "S7", "8": "S8", "9": "S9", "10": "S10", "11": "S11", "12": "S12", "13": "S13", "14": "S14", "15": "S15", "16": "S16", "17": "S17", "18": "S18", "19": "S19", "20": "S20"]
end
on ExitMovie
quit
end
on GenEnterCtyd
repeat with ctr = 8 to 17
if the castNum of sprite ctr <> 0 then
set the cursor of sprite ctr = 302
else
set the cursor of sprite ctr = 0
end if
end repeat
set the cursor of sprite 4 = 132 --16 = door
set the cursor of sprite 28 = 280 --16 = door
set the cursor of sprite 47 = 129 --47 = right zone
set the cursor of sprite 48 = 128 --48 = left zone
end
on GenLeaveCtyd
repeat with ctr = 8 to 17
if the castNum of sprite ctr <> 0 then
set the cursor of sprite ctr = 0
end if
end repeat
set the cursor of sprite 4 = 0
set the cursor of sprite 28 = 0
set the cursor of sprite 47 = 0
set the cursor of sprite 48 = 0
end
on GenEnterCdx
if the type of sprite 48 <> 0 then set the cursor of sprite 48 = 134 --47 = right zone
if the type of sprite 47 <> 0 then set the cursor of sprite 47 = 133 --48 = left zone
-- set subtitleIdx = the last word of (the name of cast (the castNum of sprite 42))
-- if cdxLookupIdx <> subtitleIdx then
-- set cdxLookupIdx = subtitleIdx
-- set cdxLookupList = value (field ("LookupListTxt" && cdxLookupIdx))
-- end if
-- set cdxNew = FALSE
end
on GenLeaveCdx
cursor 0
set the cursor of sprite 47 = 0
set the cursor of sprite 48 = 0
set cdxNew = TRUE
end
on GenMoveCdx
if the type of sprite 47 = 0 then
set the cursor of sprite 47 = 0
else
set the cursor of sprite 47 = 133
end if
if the type of sprite 48 = 0 then
set the cursor of sprite 48 = 0
else
set the cursor of sprite 48 = 134
end if
-- set subtitleIdx = the last word of (the name of cast (the castNum of sprite 42))
-- if cdxLookupIdx <> subtitleIdx then
-- set cdxLookupIdx = subtitleIdx
-- set cdxLookupList = value (field ("LookupListTxt" && cdxLookupIdx))
-- end if
end
on GoRm rmName
if integer(char 2 of rmName) <> 2 then
put "R" into char 1 of rmName
set preRx = the frameLabel
goto rmName
else --door 2 = quit
ExitMovie
end if
end
on GoCtydCdx dest
GenLeaveCtyd
set preCdx = the frameLabel
goto (GetAProp(cdxDestList, dest) & ",0")
cursor 0
GenEnterCdx
end
on GoCdxCdx dest
goto (GetAProp(cdxDestList, dest) & ",0")
GenMoveCdx
end
on JumpCodex frName, direction
set tempName = frName
delete char 1 of tempName
set curNum = item 1 of tempName
GenMoveCdx
end
on GoCdxMN action
if action <> "Nothing" then
-- set the visible of sprite 42 = FALSE
-- set the visible of sprite 43 = FALSE
updatestage
GenLeaveCdx
-- SetSearch("same", "invisible", TRUE)
if word 1 of action = "go" then ---skb
put "goto" into word 1 of action ---skb
end if ---skb
do(action)
-- set the visible of sprite 42 = TRUE
-- set the visible of sprite 43 = TRUE
-- SetSearch("on", "same", FALSE)
end if
end
on GoMNCdx dest
if gShowOrder = FALSE then
repeat with x = 5 to 8
set the visible of sprite x = FALSE
end repeat
end if
set the visible of sprite 60 = FALSE
set the visible of sprite 61 = FALSE
-- SetSearch("off", "visible", FALSE)
goto dest
GenEnterCdx
end
on GoMNMN frLabel, sprNum
if the frame<1760 then
set btnList = getAProp(MNDestList, frLabel)
set btnDest = getAProp(btnList, sprNum)
if btnDest contains ",MR0" then
beep
else
goto btnDest
end if
else
if the frame>1760 then
set btnList = getAProp(MNDestList2, frLabel)
set btnDest = getAProp(btnList, sprNum)
if btnDest contains ",MR0" then
beep
else
goto btnDest
end if
end if
end if
end
--on keyDown
-- set the visible of sprite 42 to (not the visible of sprite 42)
-- set the visible of sprite 43 to (not the visible of sprite 43)
--end
---utilities
on createCrossIndex
holder = ""
repeat with x = 760 to 1980
go frame x
set temp = the memberNUm of sprite 3
if temp <> 0 then
put the frame & "," & temp & RETURN after holder
end if
end repeat
put holder into field "crossRef"
end
on setFieldSizea
beginRecording
repeat with x = 1596 to 1596
go frame x
if the type of sprite 3 <> 0 then
set which = the membernum of sprite 3
--set the boxType of member which = #fixed
set the rect of member which of castlib 3 = rect(0, 0, 140, 280)
set the forecolor of member which of castlib 3 = 1
set the locv of sprite 3 = 118
set the loch of sprite 3 = 22
end if
end repeat
endRecording
beep
end
on createindex
set templist = ""
put "" into field "index"
repeat with x = 470 to 1091
if the mousedown then
if the controldown then
put templist into field "index"
abort
else
put x
end if
end if
put indexLine( x ) into line (x - 469) of templist
end repeat
put templist into field "index"
end
on indexLine which
set which="%"&which
set temp = field "balloons1"
if temp contains which then
set howMany = the number of lines in temp
repeat with x = 1 to howMany
if line x of temp contains which then
return "1,"&x
exit repeat
end if
end repeat
else
set temp = field "balloons2"
if not(temp contains which) then
beep
put which
end if
set howMany = the number of lines in temp
repeat with x = 1 to howMany
if line x of temp contains which then
return "2,"&x
exit repeat
end if
end repeat
if x > howmany then
put which && "xx"
end if
end if
end
on setTextRow
set x = value(char 2 to 3 of the framelabel)
set whLine = value(line (x) of field "textWindowlist")
tell window "selden text" to set where = getAt(charPosToLoc(member "info", whLine),2) - the lineheight of member "info"
tell window "selden text" to sendSprite(16,#CustomScrollbar_SetScroll,where)
end
---Leftlabs panel
on showleftPanel
if sprite(90).locH > 0 then
gShowLeftPanel=false
hideSprite [56,90,91,92,93,94,115]
repeat with x = 95 to 99
set the visible of sprite x = FALSE
end repeat
else
gShowLeftPanel=TRUE
showSprite [56,90,91,92,93,94,115]
repeat with x = 95 to 99
set the visible of sprite x = TRUE
end repeat
end if
unroll 56
updatestage
end
on checkRollLeft
if gshowBalloons then
set the member of sprite(92) = "showballoons_x"
else
set the member of sprite(92) = "showballoons_n"
end if
if gShowText then
set the member of sprite(94) = "ShowText_x"
else
set the member of sprite(94) = "ShowText_n"
end if
if gShowOrder then
set the member of sprite(93) = "ShowOrder_x"
else
set the member of sprite(93) = "ShowOrder_n"
end if
repeat with x = 91 to 94
if rollover(x) then
roll x
else
unroll x
end if
end repeat
go the frame
end
--- right labs panel
on checkRollPanel()
checkRollLeft
rolled = FALSE
repeat with x in [102,103,104,105,106,107,108,109]
if rollover(x) then
roll x
rolled = TRUE
else
unroll x
end if
end repeat
return rolled
end
on showPanel
if sprite(103).locH > 0 then
hideSprite [103,104,105,106,107,108,109]
else
showSprite [103,104,105,106,107,108,109]
end if
end
on showToolsMenu
if sprite(110).locH > 0 then
hideSprite [110,111,112,113]
else
showSprite [110,111,112,113]
end if
end
on showSprite which
repeat with x in which
if sprite(x).locH < 0 then
sprite(x).locH = sprite(x).locH +1000
end if
end repeat
updatestage
end
on hideSprite which
repeat with x in which
if sprite(x).locH > 0 then
sprite(x).locH = sprite(x).locH -1000
end if
end repeat
updatestage
end
on setcursor a,b
if the machinetype = 256 then
cursor [value(a),value(a)+1]
else
cursor b
end if
end
--- labs balloons, text, order
on showBalloons
set glastPic = ""
set gShowBalloons= not gShowBalloons
set the visible of sprite 60=FALSE
set the visible of sprite 61=FALSE
updatestage
end
on showSearch
set gshowSearch= not gshowSearch
if gshowSearch = TRUE then
open window "Selden Search"
set the windowtype of window "Selden Search" = 4
else
close window "Selden Search"
end if
end
on SearchLocate which
put which
set the itemdelimiter = ","
temp = field "crossRef"
set hMany = the number of lines in temp
repeat with x = 1 to hMany
if item 2 of line x of temp = which then
sprite(60).visible = false
sprite(61).visible = false
goto item 1 of line x of temp
exit repeat
end if
end repeat
end
on showText
set gshowText= not gshowText
if gshowText = TRUE then
open window "Selden Text"
set the windowtype of window "Selden Text" = 4
else
close window "Selden Text"
end if
end
on showOrder
set gShowOrder = not gShowOrder
if the movie contains "selden" then
a = 5
b = 8
else
a =4
b=7
end if
if gShowOrder = TRUE then
repeat with x = a to b
set the visible of sprite x = TRUE
end repeat
else
repeat with x = a to b
set the visible of sprite x = FALSE
end repeat
end if
updatestage
end